Servo writing a disk drive by synchronizing a servo write clock to a reference pattern on the disk and compensating for repeatable phase error

ABSTRACT

A method of writing product servo sectors on a disk of a disk drive is disclosed. The disk comprises a reference pattern having a plurality of sync marks written around the disk. The sync marks are detected to generate a sync mark detect signal, and a timing recovery measurement is generated in response to the sync mark detect signal. A frequency control signal is generated in response to the timing recovery measurement, and a servo write clock is generated in response to the frequency control signal. A feed-forward compensation value is generated in response to the timing recovery measurement and the frequency control signal, and the timing recovery measurement is adjusted in response to the feed-forward compensation value to compensate for a repeatable phase error in the timing recovery measurement. The servo write clock and the head internal to the disk drive are used to write the product servo sectors to the disk.

CROSS REFERENCE TO RELATED APPLICATIONS AND PATENTS

This application is related to co-pending U.S. patent application Ser.No. 10/769,387 entitled “USING AN EXTERNAL SPIRAL SERVO WRITER TO WRITEREFERENCE SERVO SECTORS AND SPIRAL TRACKS TO A DISK TO FACILITATEWRITING PRODUCT SERVO SECTORS TO THE DISK” filed on Jan. 30, 2004, thedisclosure of which is incorporated herein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to disk drives. More particularly, thepresent invention relates to servo writing a disk drive by synchronizinga servo write clock to a reference pattern on the disk and compensatingfor repeatable phase error.

2. Description of the Prior Art

When manufacturing a disk drive, product servo sectors 2 ₀–2 _(N) arewritten to a disk 4 which define a plurality of radially-spaced,concentric data tracks 6 as shown in the prior art disk format ofFIG. 1. Each product servo sector (e.g., servo sector 2 ₄) comprises apreamble 8 for synchronizing gain control and timing recovery, a syncmark 10 for synchronizing to a data field 12 comprising coarse headpositioning information such as a track number, and servo bursts 14which provide fine head positioning information. During normaloperation, the servo bursts 14 are processed by the disk drive in orderto maintain a head over a centerline of a target track while writing orreading data. In the past, external servo writers have been used towrite the product servo sectors 2 ₀–2 _(N) to the disk surface duringmanufacturing. External servo writers employ extremely accurate headpositioning mechanics, such as a laser interferometer, to ensure theproduct servo sectors 2 ₀–2 _(N) are written at the proper radiallocation from the outer diameter of the disk to the inner diameter ofthe disk. However, external servo writers are expensive and require aclean room environment so that a head positioning pin can be insertedinto the head disk assembly (HDA) without contaminating the disk. Thus,external servo writers have become an expensive bottleneck in the diskdrive manufacturing process.

The prior art has suggested various “self-servo” writing methods whereinthe internal electronics of the disk drive are used to write the productservo sectors independent of an external servo writer. For example, U.S.Pat. No. 5,668,679 teaches a disk drive which performs a self-servowriting operation by writing a plurality of spiral tracks to the diskwhich are then processed to write the product servo sectors along acircular path. Each spiral track is written to the disk as a highfrequency signal (with missing bits), wherein the position error signal(PES) for tracking is generated relative to time shifts in the detectedlocation of the spiral tracks. In addition, the '679 patent generates aservo write clock by synchronizing a phase-locked loop (PLL) to themissing bits in the spiral tracks, wherein the servo write clock is usedto write the product servo sectors at the appropriate circular locationas well as at the appropriate frequency. However, the '679 patent doesnot compensate for the repeatable phase error caused by position errorsin the missing bits when the spiral tracks are written to the disk. Therepeatable phase error causes phase incoherency in the product servosectors of adjacent tracks when servo writing the disk from the spiraltracks.

There is, therefore, a need to self-servo write a disk of a disk driveby synchronizing a servo write clock to a reference pattern prewrittenon the disk, and compensating for repeatable phase errors in thereference pattern.

SUMMARY OF THE INVENTION

The present invention may be regarded as a method of writing productservo sectors on a disk of a disk drive. The disk drive comprisescontrol circuitry and a head disk assembly (HDA) comprising the disk, anactuator arm, a head coupled to a distal end of the actuator arm, and avoice coil motor for rotating the actuator arm about a pivot to positionthe head radially over the disk. The disk comprises a reference patternhaving a plurality of sync marks written around the disk. The headinternal to the disk drive is used to read the reference pattern togenerate a read signal. The sync marks are detected from the read signalto generate a sync mark detect signal, and a timing recovery measurementis generated in response to the sync mark detect signal. A frequencycontrol signal is generated in response to the timing recoverymeasurement, and a servo write clock is generated in response to thefrequency control signal. A feed-forward compensation value is generatedin response to the timing recovery measurement and the frequency controlsignal, and the timing recovery measurement is adjusted in response tothe feed-forward compensation value to compensate for a repeatable phaseerror in the timing recovery measurement. The servo write clock and thehead internal to the disk drive are used to write the product servosectors to the disk.

In one embodiment, the repeatable phase error is caused by a positionerror in the sync marks written on the disk.

In another embodiment, the reference pattern comprises a high frequencysignal interrupted periodically by one of the sync marks. In oneembodiment, the disk comprises a plurality of spiral tracks and eachspiral track comprises the high frequency signal interruptedperiodically by one of the sync marks. In another embodiment, the stepof generating the timing recovery measurement comprises the step ofgenerating a coarse timing recovery measurement from the sync markdetect signal and a fine timing recovery measurement from the highfrequency signal.

In yet another embodiment, the step of generating the feed-forwardcompensation value comprises the steps of computing a plurality of phaseerror increments drφ_(k+1)′ according to:drφ _(k+1) ′=tr(k)−tr(k+1)−U(k)

-   -   where U(k) is the frequency control signal. In one embodiment,        the step of generating the feed-forward compensation value        further comprises the steps of computing a DC_OFFSET phase error        according to:

${{DC\_ OFFSET} = {\left( {\sum\limits_{i = 1}^{N}\;{{dr}\;\phi_{i}^{\prime}}} \right) \div N}};$and

-   -   computing a plurality of feed-forward compensation values rφ_(k)        corresponding to the plurality of the sync marks according to:

${r\;\phi_{k}} = {\sum\limits_{i = 1}^{k}\;{\left( {{{dr}\;\phi_{i}^{\prime}} - {DC\_ OFFSET}} \right).}}$

In another embodiment, the step of writing the product servo sectors tothe disk defines a plurality of tracks on the disk, and the feed-forwardcompensation values generated while writing the product servo sectors toa first track are used to generate the feed-forward compensation valuesto write the product servo sectors to a second track.

The present invention may also be regarded as a disk drive comprising adisk comprising a reference pattern having a plurality of sync markswritten around the disk, an actuator arm, a head coupled to a distal endof the actuator arm, and a voice coil motor for rotating the actuatorarm about a pivot to position the head radially over the disk. The headinternal to the disk drive is used to read the reference pattern togenerate a read signal. The sync marks are detected from the read signalto generate a sync mark detect signal, and a timing recovery measurementis generated in response to the sync mark detect signal. A frequencycontrol signal is generated in response to the timing recoverymeasurement, and a servo write clock is generated in response to thefrequency control signal. A feed-forward compensation value is generatedin response to the timing recovery measurement and the frequency controlsignal, and the timing recovery measurement is adjusted in response tothe feed-forward compensation value to compensate for a repeatable phaseerror in the timing recovery measurement. The servo write clock and thehead internal to the disk drive are used to write the product servosectors to the disk.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a prior art disk format comprising a plurality of radiallyspaced, concentric tracks defined by a plurality of product servosectors.

FIG. 2 is a flow diagram according to an embodiment of the presentinvention for servo writing a disk drive from a reference pattern bygenerating feed-forward compensation values that compensate forrepeatable phase errors in the reference pattern.

FIGS. 3A and 3B illustrate an embodiment of the present inventionwherein an external spiral servo writer is used to write a plurality ofspiral tracks to the disk for use in writing product servo sectors tothe disk.

FIG. 4 illustrates an embodiment of the present invention wherein eachspiral track is written over multiple revolutions of the disk.

FIG. 5A shows an embodiment of the present invention wherein a servowrite clock is synchronized by clocking a modulo-N counter relative towhen the sync marks in the spiral tracks are detected.

FIG. 5B shows an eye pattern generated by reading the spiral track,including the sync marks in the spiral track.

FIG. 6 illustrates writing of product servo sectors using a servo writeclock generated from reading the spiral tracks.

FIG. 7 shows circuitry according to an embodiment of the presentinvention for generating the servo write clock.

FIG. 8 shows an embodiment of the timing recovery circuitry wherein afine phase error is generated from read signal sample values andexpected sample values, and the servo write clock is used tosynchronously sample the read signal.

FIG. 9 illustrates the read signal sample values, the expected samplevalues, and the corresponding phase error.

FIG. 10 shows an alternative embodiment wherein the timing recoverycircuitry comprises an interpolator and a read oscillator is used tosample the read signal.

FIG. 11 shows an embodiment of the present invention wherein the syncmark detector is implemented in a read channel integrated circuit and atime-stamp sync mark detect signal is transmitted to a controller forprocessing in firmware to generate the coarse timing recoverymeasurement.

FIG. 12 shows an embodiment of the present invention wherein thecontroller comprises firmware for generating feed-forward compensationvalues to compensate for repeatable phase errors due to errors in theposition of the sync marks from track to track.

FIGS. 13A–13B illustrate computation of the repeatable phase errors whenthe servo write clock is synchronized to the rotational frequency of thedisk and the phase locked loop (PLL) is running open loop.

FIGS. 14A–14B illustrate computation of the repeatable phase errors whenthe servo write clock is not synchronized to the rotational frequency ofthe disk resulting in a DC phase error.

FIG. 15 is a flow diagram according to an embodiment of the presentinvention for computing feed-forward compensation values in response tothe composite phase error and the frequency control signal U(k) tocompensate for repeatable phase error.

FIGS. 16A–16B show an embodiment of the present invention wherein thefeed-forward compensation values generated for a previous servo trackare used to generate the feed-forward compensation values for servowriting a next servo track.

FIG. 17 shows an embodiment of the present invention wherein an externalproduct servo writer is used to process the spiral tracks in order towrite the product servo sectors to the disk.

FIG. 18 shows an embodiment of the present invention wherein an externalspiral servo writer is used to write the spiral tracks, and a pluralityof external product servo writers write the product servo sectors forthe HDAs output by the external spiral servo writer.

FIG. 19 shows an embodiment of the present invention wherein an externalspiral servo writer is used to write the spiral tracks, and the controlcircuitry within each product disk drive is used to write the productservo sectors.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 2 shows a method of writing product servo sectors on a disk of adisk drive according to an embodiment of the present invention. The diskdrive comprises control circuitry and a head disk assembly (HDA)comprising the disk, an actuator arm, a head coupled to a distal end ofthe actuator arm, and a voice coil motor for rotating the actuator armabout a pivot to position the head radially over the disk. At step 1, areference pattern having a plurality of sync marks is written (orstamped) onto the disk. At step 3, the head internal to the disk driveis used to read the reference pattern to generate a read signal. At step5, the sync marks are detected from the read signal to generate a syncmark detect signal, and at step 7 a timing recovery measurement isgenerated in response to the sync mark detect signal. At step 9, afrequency control signal is generated in response to the timing recoverymeasurement, and at step 11 a servo write clock is generated in responseto the frequency control signal. At step 13, a feed-forward compensationvalue is generated in response to the timing recovery measurement andthe frequency control signal, and at step 15 the timing recoverymeasurement is adjusted in response to the feed-forward compensationvalue to compensate for a repeatable phase error in the timing recoverymeasurement. At step 17, the servo write clock and the head internal tothe disk drive are used to write the product servo sectors to the disk.

The reference pattern may comprise any suitable pattern and may bewritten to the disk using any suitable technique, such as using anexternal writer for writing the reference pattern to the disk, orstamping the reference pattern on the disk using magnetic printingtechniques. FIGS. 3A and 3B show an embodiment wherein a plurality ofspiral tracks 20 ₀–20 _(N) are written to a disk 18 of a disk drive 16using an external spiral servo writer 36. The disk drive 16 comprisescontrol circuitry 34 and a head disk assembly (HDA) 32 comprising thedisk 18, an actuator arm 26, a head 28 coupled to a distal end of theactuator arm 26, and a voice coil motor 30 for rotating the actuator arm26 about a pivot to position the head 28 radially over the disk 18. Awrite clock is synchronized to the rotation of the disk 18, and theplurality of spiral tracks 20 ₀–20 _(N) are written on the disk 18 at apredetermined circular location determined from the write clock. Eachspiral track 20 _(i) comprises a high frequency signal 22 (FIG. 5B)interrupted at a predetermined interval by a sync mark 24.

The external spiral servo writer 36 comprises a head positioner 38 foractuating a head positioning pin 40 using sensitive positioningcircuitry, such as a laser interferometer. Pattern circuitry 42generates the data sequence written to the disk 18 for the spiral tracks20 ₀–20 _(N). The external spiral servo writer 36 inserts a clock head46 into the HDA 32 for writing a clock track 44 (FIG. 3B) at an outerdiameter of the disk 18. The clock head 46 then reads the clock track 44to generate a clock signal 48 processed by timing recovery circuitry 50to synchronize the write clock 51 for writing the spiral tracks 20 ₀–20_(N) to the disk 18. The timing recovery circuitry 50 enables thepattern circuitry 42 at the appropriate time relative to the write clock51 so that the spiral tracks 20 ₀–20 _(N) are written at the appropriatecircular location. The timing recovery circuitry 50 also enables thepattern circuitry 42 relative to the write clock 51 to write the syncmarks 24 (FIG. 5B) within the spiral tracks 20 ₀–20 _(N) at the samecircular location from the outer diameter to the inner diameter of thedisk 18. As described below with reference to FIG. 6, the constantinterval between sync marks 24 (independent of the radial location ofthe head 28) enables the servo write clock to maintain synchronizationwhile writing the product servo sectors to the disk.

In the embodiment of FIG. 3B, each spiral track 20 _(i) is written overa partial revolution of is the disk 18. In an alternative embodiment,each spiral track 20 _(i) is written over one or more revolutions of thedisk 18. FIG. 4 shows an embodiment wherein each spiral track 20 _(i) iswritten over multiple revolutions of the disk 18. In the embodiment ofFIG. 3A, the entire disk drive 16 is shown as being inserted into theexternal spiral servo writer 36. In an alternative embodiment, only theHDA 32 is inserted into the external spiral servo writer 36. In yetanother embodiment, an external media writer is used to write the spiraltracks 20 ₀–20 _(N) to a number of disks 18, and one or more of thedisks 18 are then inserted into an HDA 32.

Referring again to the embodiment of FIG. 3A, after the external spiralservo writer 36 writes the spiral tracks 20 ₀–20 _(N) to the disk 18,the head positioning pin 40 and clock head 46 are removed from the HDA32 and the product servo sectors are written to the disk 18. In oneembodiment, the control circuitry 34 within the disk drive 16 is used toprocess the spiral tracks 20 ₀–20 _(N) in order to write the productservo sectors to the disk 18. In an alternative embodiment describedbelow with reference to FIGS. 17 and 18, an external product servowriter is used to process the spiral tracks 20 ₀–20 _(N) in order towrite the product servo sectors to the disk 18 during a “filloperation”.

FIG. 5B illustrates an “eye” pattern in the read signal that isgenerated when the head 28 passes over a spiral track 20. The readsignal representing the spiral track comprises high frequencytransitions 22 interrupted by sync marks 24. When the head 28 moves inthe radial direction, the eye pattern will shift (left or right) whilethe sync marks 24 remain fixed. The shift in the eye pattern (detectedfrom the high frequency signal 22) relative to the sync marks 24provides the off-track information (position error signal or PES) forserving the head 28.

FIG. 5A shows an embodiment of the present invention wherein a saw-toothwaveform 52 is generated by clocking a modulo-N counter with the servowrite clock, wherein the frequency of the servo write clock is adjusteduntil the sync marks 24 in the spiral tracks 20 ₀–20 _(N) are detectedat a target modulo-N count value. The servo write clock may be generatedusing any suitable circuitry, such as a phase locked loop (PLL). As eachsync mark 24 in the spiral tracks 20 ₀–20 _(N) is detected, the value ofthe modulo-N counter represents the phase error for adjusting the PLL.In one embodiment, the PLL is updated when any one of the sync marks 24within the eye pattern is detected. In this manner the multiple syncmarks 24 in each eye pattern (each spiral track crossing) providesredundancy so that the PLL is still updated if one or more of the syncmarks 24 are missed due to noise in the read signal. Once the sync marks24 are detected at the target modulo-N count values, the servo writeclock is coarsely locked to the desired frequency for writing theproduct servo sectors to the disk 18.

The sync marks 24 in the spiral tracks 20 ₀–20 _(N) may comprise anysuitable pattern, and in one embodiment, a pattern that is substantiallyshorter than the sync mark 10 in the conventional product servo sectors2 of FIG. 1. A shorter sync mark 24 allows the spiral tracks 20 ₀–20_(N) to be written to the disk 18 using a steeper slope (by moving thehead faster from the outer diameter to the inner diameter of the disk18) which reduces the time required to write each spiral track 20 ₀–20_(N).

In one embodiment, the servo write clock is further synchronized bygenerating a timing recovery measurement from the high frequency signal22 between the sync marks 24 in the spiral tracks 20 ₀–20 _(N).Synchronizing the servo write clock to the high frequency signal 22helps maintain proper radial alignment (phase coherency) of the Graycoded track addresses in the product servo sectors. The timing recoverymeasurement may be generated in any suitable manner. In one embodiment,the servo write clock is used to sample the high frequency signal 22 andthe signal sample values are processed to generate the timing recoverymeasurement. The timing recovery measurement adjusts the phase of theservo write clock (PLL) so that the high frequency signal 22 is sampledsynchronously. In this manner, the sync marks 24 provide a coarse timingrecovery measurement and the high frequency signal 22 provides a finetiming recovery measurement for maintaining synchronization of the servowrite clock.

FIG. 6 illustrates how the product servo sectors 56 ₀–56 _(N) arewritten to the disk 18 after synchronizing the servo write clock inresponse to the high frequency signal 22 and the sync marks 24 in thespiral tracks 20 ₀–20 _(N). In the embodiment of FIG. 6, the dashedlines represent the centerlines of the data tracks. The sync marks inthe spiral tracks 20 ₀–20 _(N) are written so that there is a shift oftwo sync marks 24 in the eye pattern (FIG. 5B) between data tracks. Inan alternative embodiment, the sync marks 24 in the spiral tracks 20₀–20 _(N) are written so that there is a shift of N sync marks in theeye pattern between data tracks. In the embodiment of FIG. 6, eachspiral track 20 ₀–20 _(N) is wider than a data track, however, in analternative embodiment the width of each spiral track 20 ₀–20 _(N) isless than or proximate the width of a data track.

The PES for maintaining the head 28 along a servo track (tracking) maybe generated from the spiral tracks 20 ₀–20 _(N) in any suitable manner.In one embodiment, the PES is generated by detecting the eye pattern inFIG. 5B using an envelope detector and detecting a shift in the enveloperelative to the sync marks 24. In one embodiment, the envelope isdetected by integrating the high frequency signal 22 and detecting ashift in the resulting ramp signal. In an alternative embodiment, thehigh frequency signal 22 between the sync marks 24 in the spiral tracksare demodulated as servo bursts and the PES generated by comparing theservo bursts in a similar manner as the servo bursts 14 in the productservo sectors (FIG. 1).

Once the head 28 is tracking on a servo track, the product servo sectors56 ₀–56 _(N) are written to the disk using the servo write clock. Writecircuitry is enabled when the modulo-N counter reaches a predeterminedvalue, wherein the servo write clock clocks the write circuitry to writethe product servo sector 56 to the disk. The spiral tracks 20 ₀–20 _(N)on the disk are processed in an interleaved manner to account for theproduct servo sectors 56 ₀–56 _(N) overwriting a spiral track. Forexample, when writing the product servo sectors 56 ₁ to the disk, spiraltrack 20 ₂ is processed initially to generate the PES tracking error andthe timing recovery measurement. When the product servo sectors 56 ₁begin to overwrite spiral track 20 ₂, spiral track 20 ₃ is processed togenerate the PES tracking error and the timing recovery measurement.

FIG. 7 shows details of control circuitry for synchronizing the servowrite clock 58 according to an embodiment of the present invention. Theread signal 60 emanating from the head 28 is sampled 62, and the readsignal sample values 64 are processed by a sync mark detector 66 fordetecting the sync marks 24 in the spiral tracks 20 ₀–20 _(N). The syncmark detector 66 generates a sync mark detect signal 68 applied to atiming recovery circuit 70. The timing recovery circuit 70 processes thesync mark detect signal 68 to generate a coarse timing recoverymeasurement, and the read signal sample values 64 representing the highfrequency signal 22 in the spiral tracks 20 ₀–20 _(N) to generate a finetiming recovery measurement. The coarse and fine timing recoverymeasurements are combined to generate a control signal applied to awrite oscillator 72 which outputs the servo write clock 58. The servowrite clock 58 clocks operation of write circuitry 74 for writing theproduct servo sectors 56 ₀–56 _(N) to the disk 18. The servo write clock58 is also fed back into the timing recovery circuit 70 and used togenerate the coarse timing recovery measurement. The timing recoverycircuit 70 generates a sync mark detection window over line 78 forenabling the sync mark detector 66 during a window where a sync mark 24is expected to occur. The timing recovery circuit 70 also generates acontrol signal over line 80 to enable the write circuitry 74 to beginwriting a product servo sector at the appropriate time.

FIG. 8 shows details of a suitable timing recovery circuit 70 accordingto an embodiment of the present invention wherein the servo write clock58 is used to synchronously sample 62 the read signal 60 to generatesynchronous read signal sample values 64. A phase error detector 82detects a phase error φ84 between the read signal sample values 64(arrows in FIG. 9) and expected sample values 88 (circles in FIG. 9). Anexpected sample generator 86 generates the expected sample values 88input into the phase error detector 82. The phase error detector 82generates the phase error φ84 by implementing a suitable stochasticgradient equation. In one embodiment, the expected sample generator 86processes the read signal samples 64 to initialize a state machine whichthen outputs the expected sample values 88. Referring to FIG. 9, afterbeing initialized the state machine generates the sequence ( . . . +A,+A, −A, −A, +A, +A, −A, −A . . . ). In one embodiment, a high bandwidthgain loop maintains the gain of the read signal sample values 64 at atarget level to compensate for the amplitude variation in the readsignal 60 (the eye pattern of FIG. 5B) as the head 28 passes over aspiral track 20. In an alternative embodiment, the amplitude A of theexpected sample values 88 is adjusted relative to the amplitude of theread signal 60. For example, an envelope detector can track theamplitude of the eye pattern (FIG. 5B) and then adjust the amplitude Aof the expected sample values 88 accordingly. However, any suitabletechnique may be used to generate the fine timing recovery measurement(phase error φ) from the high frequency signal 22 in the spiral tracks20. In one embodiment, a suitable trigonometric identity is employed togenerate the phase error φ in a manner that is substantially independentof the amplitude variations in the read signal 60.

The servo write clock 58 also clocks a modulo N counter 90 (FIG. 8).When the sync mark detector 66 detects a sync mark 24 in a spiral track20, the content of the modulo N counter 90 is subtracted 92 from anexpected count value 94 to generate the coarse timing recoverymeasurement 96. The coarse timing recovery measurement 96 and the finetiming recovery measurement (phase error φ84) are combined 98 andfiltered by a loop filter 100. The output of the loop filter 100 is afrequency control signal 102 applied to the write oscillator 72 in orderto synchronize the servo write clock 58.

FIG. 10 shows details of a timing recovery circuit 70 according to analternative embodiment of the present invention employing interpolatedtiming recovery (ITR). A read oscillator 101 samples 62 the reads signal60 at a constant frequency to generate asynchronous sample values 64. Aphase error detector 82 generates a phase error φ84 between the expectedsample values 88 and the asynchronous sample values 64. An interpolator103 interpolates the asynchronous sample values 64 using the phase errorφ84 to generate synchronous sample values 105 processed by the sync markdetector 66 and the expected sample value generator 86. The interpolator103 may employ any suitable circuitry, and in one embodiment implementsa finite impulse response filter with variable coefficients forperforming the interpolation. The remaining components in the timingrecovery circuit 70 of FIG. 10 operate as described above with referenceto FIG. 8 to generate a frequency control signal 102 applied to thewrite oscillator 72 in order to synchronize the servo write clock 58. Inone embodiment, the read oscillator 101 and the write oscillator 72 areimplemented on the same substrate so that they exhibit substantially thesame center frequency and temperature drift.

FIG. 11 shows an embodiment of the present invention wherein a readchannel integrated circuit 106 comprises circuitry for implementing thesync mark detector 66 and time-stamp circuitry 108 for generating atime-stamped sync mark detect signal 110, wherein the time-stamped syncmark detect signal 110 represents a time when a sync mark in a spiraltrack was detected relative to the servo write clock 58. In theembodiment shown in FIG. 8, the time-stamp circuitry 110 comprises themodulo-N counter 90 wherein the time-stamp sync mark detect signal 110is the value of the modulo-N counter 90 when a sync mark is detected.The time-stamped sync mark detect signal 110 is processed in firmwareexecuted by a controller 112. The firmware computes a difference 114between the time-stamped sync mark detect signal 110 and an expectedtime 116 to thereby generate a coarse timing recovery measurement 118used to synchronize the servo write clock 58. In the embodiment of FIG.8, the expected time 116 comprises a table of expected module-N countvalues corresponding to the expected values of the modulo-N counter 90at each sync mark. The write oscillator 72 is shown as a separatecomponent in the embodiment of FIG. 11; however, in one embodiment thewrite oscillator 72 is integrated into the read channel 106 or thecontroller 112.

The controller 112 also receives fine timing recovery information 120generated by fine timing recovery circuitry 122 within the read channel106. In the embodiment of FIG. 8, the fine timing recovery information122 comprises the phase error φ84 between the read signal sample values64 (arrows in FIG. 9) and expected sample values 88 (circles in FIG. 9).The phase error φ84 received by the controller 112 is combined 124 withthe coarse timing recovery measurement 118 to generate a compositetiming recovery measurement 125 filtered by loop filter 100 implementedin firmware.

Computing the coarse timing recovery measurement 118 in firmwareincreases the flexibility of the timing recovery algorithm whiledecreasing the cost and complexity of the circuitry employed in the readchannel 106. In addition, implementing the loop filter 100 in firmwareallows for more sophisticated (e.g., non-linear) operations to accountfor anomalies in the coarse timing recovery measurement 118 (such aslarge transients due to media defects). Yet further advantages realizedby implementing timing recovery in firmware include computing (at leastpartially) the fine timing recovery measurement in firmware as well as afeed-forward compensation value to compensate for repeatable phase errorin the composite timing recovery measurement 125.

FIG. 12 illustrates an embodiment wherein the controller 112 generates afine timing recovery measurement in firmware in response to the finetiming recovery information 120 received from the read channel 106. Forexample, the fine timing recovery information 120 received from the readchannel 106 may comprise trigonometric information (e.g., sin and cosinevalues) processed in firmware (e.g., by computing an arctangent infirmware) to generate the fine timing recovery measurement 128.Implementing complex computations in firmware block 126 (such as anarctangent) reduces the cost and complexity of the read channel 106.

Yet another benefit illustrated in the embodiment of FIG. 12 is theability to generate a table of feed-forward compensation values infirmware (block 134) to compensate for repeatable phase errors due toposition errors in the sync marks from track to track. Referring againto FIG. 6, the sync marks in the spiral tracks 20 are shown as havingperfect radial alignment from the outer diameter tracks to the innerdiameter tracks. In reality, the position of the sync marks will varyfrom track to track due to a number of factors, such as disk expansionand vibrations in the clock head 46 (FIG. 3A) while writing the spiraltracks 20 to the disk. The position errors in the sync marks from trackto track will result in a repeatable phase error in the composite timingrecovery measurement 125. To compensate for this repeatable phase error,the firmware generates a table of feed-forward compensation values(stored in block 134) which are used to adjust the composite timingrecovery measurement 125 at adder 135. When the composite timingrecovery measurement 125 is generated for a particular sync mark, it isadjusted at adder 135 by adding the corresponding feed-forwardcompensation value rφ_(k) 137.

FIGS. 13A–13B illustrate the computation of the repeatable phase errorand corresponding feed-forward compensation value when the PLL isoperated open loop. FIG. 13A shows a servo track wherein the desiredposition of the sync marks is shown in dashed lines and the actualposition of the sync marks is shown in solid lines. In the example,there are five sync marks in the reference pattern distributed aroundthe disk. FIG. 13B shows the saw-tooth waveform 52 generated by clockingthe modulo-N counter wherein the target module-N counter valuecorresponding to the desired location of the sync marks is N/2 (themiddle of the ramp). Due to the position error in writing the syncmarks, the actual modulo-N counter value will deviate from N/2reflecting the repeatable phase error. The repeatable phase errorincrement drφ (from sync mark to sync mark):drφ _(k+1) =STS(k)−STS(k+1)  (1)where STS or “servo time stamp” is the value of the modulo-N counterwhen the corresponding sync mark is detected (i.e., the k and k+1 syncmarks). The repeatable phase error (and corresponding feed-forwardcompensation value) for the kth sync mark (from k=1 to k=4):

$\begin{matrix}{{r\;\phi_{k}} = {\sum\limits_{i = 1}^{k}\;{{dr}\;\phi_{i}}}} & (2)\end{matrix}$In one embodiment, the modulo-N counter 90 (FIG. 8) is initialized(e.g., to N/2) at the first sync mark (k=0) and therefore the repeatablephase error rφ₀ for the first sync mark is zero.

In the example embodiment of FIGS. 13A–13B, the open loop frequency(center frequency U₀) of the write oscillator 72 generates the servowrite clock 58 at the target sync mark frequency (which is tied to therotational speed of the disk). FIGS. 14A–14B illustrate an embodimentwherein the center frequency U₀ of the write oscillator 72 generates theservo write clock 58 slightly offset from the target sync mark frequencyresulting in a DC_OFFSET phase error. The DC_OFFSET phase error inducedinto each cycle of the modulo-N counter:

$\begin{matrix}{{DC\_ OFFSET} = {\left( {\sum\limits_{i = 1}^{N}\;{{dr}\;\phi_{i}^{\prime}}} \right) \div N}} & (3)\end{matrix}$where N is the number of sync marks (five in FIG. 14A) anddrφ_(i)′=DC_OFFSET+drφ_(i). Therefore, the repeatable phase error (andcorresponding feed-forward compensation value) for the kth sync mark(from k=1 to k=4):

$\begin{matrix}{{r\;\phi_{k}} = {\sum\limits_{i = 0}^{k}\;\left( {{{dr}\;\phi_{i}^{\prime}} - {DC\_ OFFSET}} \right)}} & (4)\end{matrix}$

Due to non-repeatable phase errors (e.g., disk speed variations), therepeatable phase errors are estimated while the PLL is operating closedloop (i.e., generating a frequency control signal U(k) in response tothe timing recovery measurement). The expected phase error increment edφwhen the PLL operates closed loop:edφ _(k+1) =DC_OFFSET+U(k)+drφ _(k+1)  (5)where DC_OFFSET is described above, U(k) is the frequency control signal(102 in FIG. 12) applied during the interval after the kth sync mark,and drφ_(k+1) is the repeatable phase error increment associated withthe k+1 sync mark. The measured phase error increment mdφ when the PLLoperates closed loop:mdφ _(k+1) =STS(k)−STS(k+1)  (6)Setting equation (5) equal to equation (6) and solving forDC_OFFSET+drφ_(k+1):drφ _(k+1) ′=DC_OFFSET+drφ _(k+1) =STS(k)−STS(k+1)−U(k)  (7)The phase error rφ_(k)′ for the kth sync mark (from k=1 to k=N−1):

$\begin{matrix}{{r\;\phi_{k}^{\prime}} = {\sum\limits_{i = 1}^{k}\;{{dr}\;\phi_{i}^{\prime}}}} & (8)\end{matrix}$Therefore, the repeatable phase error rφ_(k) (and correspondingfeed-forward compensation value) for the kth sync mark (from k=1 tok=N−1):

$\begin{matrix}{{r\;\phi_{k}} = {\sum\limits_{i = 1}^{k}\;\left( {{{dr}\;\phi_{i}^{\prime}} - {DC\_ OFFSET}} \right)}} & (9)\end{matrix}$where DC_OFFSET is computed from equation (3).

The estimate of the repeatable phase error is improved by including thefine phase error measurement into the above equations. Equation (7)becomes:drφ _(k+1) ′=DC_OFFSET+drφ _(k+1) =tr(k)−tr(k+1)−U(k)  (10)where tr(k) is the composite timing recovery measurement 125 in FIG. 12.Therefore, the table of feed-forward compensation values stored in block134 of FIG. 12 can be computed according to equations (9) and (10) bymeasuring tr(k), tr(k+1) and U(k) for each sync mark over a revolutionof the disk. In one embodiment, the estimate of phase error incrementdrφ_(k+1)′ is improved by averaging the values tr(k), tr(k+1), and U(k)over several revolutions of the disk, wherein the modulo-N counter 90 isreset (e.g., to N/2) when the first sync mark (k=0) is detected at thebeginning of each revolution.

FIG. 15 is a flow diagram according to an embodiment of the presentinvention for computing the feed-forward compensation values rφ_(k) 137and writing the product servo sectors to the disk using the feed-forwardcompensation values rφ_(k) 137. At step 140 the table of expectedmodulo-N counter values 116 in FIG. 12 is initialized to valuescorresponding to the expected locations of the sync marks. At step 142the servo write clock 58 is synchronized to reference sync marksrecorded at an initial radial location on the disk 18. More detailsconcerning the reference sync marks are disclosed in the abovereferenced patent application entitled “USING AN EXTERNAL SPIRAL SERVOWRITER TO WRITE REFERENCE SERVO SECTORS AND SPIRAL TRACKS TO A DISK TOFACILITATE WRITING PRODUCT SERVO SECTORS TO THE DISK”. At step 144 thehead is moved radially inward to the first servo track defined by thespiral tracks. At step 146 the composite timing recovery measurementtr(k) and tr(k+1) and the frequency control signal U(k) are averaged foreach sync mark over several revolutions of the disk. At step 148 thephase error increments drφ_(k+1)′ are computed according to equation(10), and at step 150 the DC_OFFSET is computed according to equation(3). At step 152 the feed-forward compensation values rφ_(k) 137 arecomputed according to equation (9). At step 154 the product servosectors are written to the current servo track using the feed-forwardcompensation values rφ_(k) 137 computed at step 152. At step 156 thehead is moved to the next servo track, and the procedure repeatsstarting at step 146 until all of the servo tracks are servo written atstep 158.

In one embodiment, the feed-forward compensation values generated for aprevious servo track are used to generate feed-forward compensationadjustment values for servo writing a next servo track. This embodimentis illustrated in FIG. 16A which shows the feed-forward compensationvalues rφ_(k)(i−1) 137 for servo writing servo track (i−1) being used toadjust the composite timing recovery measurement tr(k) 125 to generatean adjusted composite timing recovery measurement tr(k)′ 139 for servotrack (i). Referring to FIG. 16B, at step 160 a table is generated ofaverage values for tr(k)′, tr(k+1)′ and U(k) for each sync mark overmultiple revolutions of the disk for servo track (i). At step 164 thefeed-forward compensation adjustment values rφ_(k) are computed forservo track (i) according to the above equations, and at step 166 thetable of feed-forward compensation values 168 for servo track (i) areupdated:rφ _(k)(i)=rφ _(k)(i−1)+rφ _(k)  (11)The product servo sectors are then written to servo track (i) using theupdated feed-forward compensation values rφ_(k)(i) 137 stored in table168. Computing feed-forward compensation adjustment values improvesconvergence by effectively increasing the number of revolutionsperformed to compute the average values for tr(k), tr(k+1) and U(k) atstep 146 of FIG. 15.

In one embodiment, equation (10) is modified to account for the delay incomputing the frequency control signal U(k):drφ _(k+1) ′=DC_OFFSET+drφ _(k+1)=tr(k)−tr(k+1)−[cd·U(k−1)+(1−cd)·U(k)]  (12)where cd is a fractional value representing the computational delay incomputing U(k) for the k+1 sync mark interval. That is, the frequencycontrol signal U(k−1) computed for the previous (k) sync mark intervalis applied to the write oscillator 72 for a fraction (cd) of the k+1sync mark interval, and then the newly computed frequency control signalU(k) is applied to the write oscillator 72 for the remainder (1−cd) ofthe k+1 sync mark interval.

In the embodiments disclosed in FIGS. 13A–13B and 14A–14B, therepeatable phase errors rφ_(k) are computed relative to target syncmarks (dotted lines in FIGS. 13A and 14A) as determined from an initial(k=0) sync mark. In another embodiment, the repeatable phase errorsrφ_(k) are adjusted by the average or DC value so that the target syncmarks correspond to an “average flat track” which may improvesignal-to-noise ratio (SNR). The average or DC repeatable phase error:

$\begin{matrix}{{DC\_ R\phi} = {\left( {\sum\limits_{i = 1}^{N}\;{r\;\phi_{i}}} \right) \div N}} & (13)\end{matrix}$and the adjusted repeatable phase error:rφ _(k) =rφ _(k) −DC _(—) Rφ  (14)

In one embodiment, the estimate of the repeatable phase error may beimproved by removing the first and/or second harmonics from the computedrepeatable phase errors rφ_(k). This can be accomplished by computingthe single-point discrete-time Fourier transform (DTFT) to extract thefirst and/or second harmonics, computing the inverse DTFT, andsubtracting the time domain result from rφ_(k).

FIG. 17 shows an embodiment of the present invention wherein afterwriting the spiral tracks 20 ₀–20 _(N) to the disk 18 (FIGS. 3A–3B), theHDA 32 is inserted into an external product servo writer 170 comprisingsuitable circuitry for reading and processing the spiral tracks 20 ₀–20_(N) in order to write the product servo sectors 56 ₀–56 _(N) to thedisk 18. The external product servo writer 170 comprises a read/writechannel 172 for interfacing with a preamp 174 in the HDA 32. The preamp174 amplifies a read signal emanating from the head 28 over line 176 togenerate an amplified read signal applied to the read/write channel 172over line 178. The read/write channel 172 comprises circuitry forgenerating servo burst signals 180 from the high frequency signal 22(FIG. 5B) in the spiral tracks 20 ₀–20 _(N), wherein the servo burstsignals are applied to a servo controller 182. The servo controller 182processes the servo burst signals 180 to generate the PES. The PES isprocessed to generate a VCM control signal applied to the VCM 30 overline 184 in order to maintain the head 28 along a circular path whilewriting the product servo sectors 56 ₀–56 _(N). The servo controller 182also generates a spindle motor control signal applied to a spindle motor186 over line 188 to maintain the disk 18 at a desired angular velocity.Control circuitry 190 processes information received from the read/writechannel 172 over line 192 associated with the spiral tracks 20 ₀–20 _(N)(e.g., timing information) and provides the product servo sector data tothe read/write channel 172 at the appropriate time. The product servosector data is provided to the preamp 174 which modulates a current inthe head 28 in order to write the product servo sectors 56 ₀–56 _(N) tothe disk 18. The control circuitry 190 also transmits controlinformation over line 194 to the servo controller 182 such as the targetservo track to be written. After writing the product servo sectors 56₀–56 _(N) to the disk 18, the HDA 32 is removed from the externalproduct servo writer 170 and a printed circuit board assembly (PCBA)comprising the control circuitry 34 (FIG. 3A) is mounted to the HDA 32.

In one embodiment, the external product servo writer 170 of FIG. 17interfaces with the HDA 32 over the same connections as the controlcircuitry 34 to minimize the modifications needed to facilitate theexternal product servo writer 170. The external product servo writer 170is less expensive than a conventional servo writer because it does notrequire a clean room or sophisticated head positioning mechanics. In anembodiment shown in FIG. 18, a plurality of external product servowriters 170 ₀–170 _(N) process the HDAs 32 _(i)–32 _(i+N) output by anexternal spiral servo writer 36 in order to write the product servosectors less expensively and more efficiently than a conventional servowriter. In an alternative embodiment shown in FIG. 19, an externalspiral servo writer 36 is used to write the spiral tracks, and thecontrol circuitry 34 within each product disk drive 16 _(i)–16 _(i+N) isused to write the product servo sectors.

1. A method of writing product servo sectors on a disk of a disk drive,the disk drive comprising control circuitry and a head disk assembly(HDA) comprising the disk, an actuator arm, a head coupled to a distalend of the actuator arm, and a voice coil motor for rotating theactuator arm about a pivot to position the head radially over the disk,the disk comprising a reference pattern having a plurality of sync markswritten around the disk, the method comprising the steps of: (a) usingthe head internal to the disk drive to read the reference pattern togenerate a read signal; (b) detecting the sync marks from the readsignal to generate a sync mark detect signal; (c) generating a timingrecovery measurement in response to the sync mark detect signal; (d)generating a frequency control signal in response to the timing recoverymeasurement; (e) generating a servo write clock in response to thefrequency control signal; (f) generating a feed-forward compensationvalue in response to the timing recovery measurement and the frequencycontrol signal; (g) adjusting the timing recovery measurement inresponse to the feed-forward compensation value to compensate for arepeatable phase error in the timing recovery measurement; and (h) usingthe servo write clock and the head internal to the disk drive to writethe product servo sectors to the disk.
 2. The method as recited in claim1, wherein the repeatable phase error is caused by a position error inthe sync marks written on the disk.
 3. The method as recited in claim 1,wherein the reference pattern comprises a high frequency signalinterrupted periodically by one of the sync marks.
 4. The method asrecited in claim 3, wherein: (a) the disk comprises a plurality ofspiral tracks; and (b) each spiral track comprises the high frequencysignal interrupted periodically by one of the sync marks.
 5. The methodas recited in claim 3, wherein the step of generating the timingrecovery measurement comprises the step of generating a coarse timingrecovery measurement from the sync mark detect signal and a fine timingrecovery measurement from the high frequency signal.
 6. The method asrecited in claim 1, wherein the step of generating the feed-forwardcompensation value comprises the steps of: (a) computing a plurality oftiming recovery measurements tr(k) corresponding to a plurality of thesync marks; and (b) computing a plurality of phase error incrementsdrφ_(k+1)′ according to:drφ _(k+1) ′=tr(k)−tr(k+1)−U(k) where U(k) is the frequency controlsignal.
 7. The method as recited in claim 6, wherein the step ofgenerating the feed-forward compensation value further comprises thesteps of: (a) computing a DC_OFFSET phase error according to:${{DC\_ OFFSET} = {\left( {\sum\limits_{i = 1}^{N}\;{{dr}\;\phi_{i}^{\prime}}} \right) \div N}};$and (b) computing a plurality of feed-forward compensation values rφ_(k)corresponding to the plurality of the sync marks according to:${r\;\phi_{k}} = {\sum\limits_{i = 1}^{k}\;{\left( {{{dr}\;\phi_{i}^{\prime}} - {DC\_ OFFSET}} \right).}}$8. The method as recited in claim 1, wherein: (a) the step of writingthe product servo sectors to the disk defines a plurality of tracks onthe disk; and (b) the feed-forward compensation values generated whilewriting the product servo sectors to a first track are used to generatethe feed-forward compensation values to write the product servo sectorsto a second track.
 9. A disk drive comprising: (a) a disk comprising areference pattern having a plurality of sync marks written around thedisk; (b) an actuator arm; (c) a head coupled to a distal end of theactuator arm; (d) a voice coil motor for rotating the actuator arm abouta pivot to position the head radially over the disk; and (e) controlcircuitry for: using the head internal to the disk drive to read thereference pattern to generate a read signal; detecting the sync marksfrom the read signal to generate a sync mark detect signal; generating atiming recovery measurement in response to the sync mark detect signal;generating a frequency control signal in response to the timing recoverymeasurement; generating a servo write clock in response to the frequencycontrol signal; generating a feed-forward compensation value in responseto the timing recovery measurement and the frequency control signal;adjusting the timing recovery measurement in response to thefeed-forward compensation value to compensate for a repeatable phaseerror in the timing recovery measurement; and using the servo writeclock and the head internal to the disk drive to write the product servosectors to the disk.
 10. The disk drive as recited in claim 9, whereinrepeatable phase error is caused by a position error in the sync markswritten on the disk.
 11. The disk drive as recited in claim 9, whereinthe reference pattern comprises a high frequency signal interruptedperiodically by one of the sync marks.
 12. The disk drive as recited inclaim 11, wherein: (a) the disk comprises a plurality of spiral tracks;and (b) each spiral track comprises the high frequency signalinterrupted periodically by one of the sync marks.
 13. The disk drive asrecited in claim 11, wherein the control circuitry generates the timingrecovery measurement by generating a coarse timing recovery measurementfrom the sync mark detect signal and a fine timing recovery measurementfrom the high frequency signal.
 14. The disk drive as recited in claim9, wherein the control circuitry generates the feed-forward compensationvalue by: (a) computing a plurality of timing recovery measurementstr(k) corresponding to a plurality of the sync marks; and (b) computinga plurality of phase error increments drφ_(k+1)′ according to:drφ _(k+1) ′=tr(k)−tr(k+1)−U(k) where U(k) is the frequency controlsignal.
 15. The disk drive as recited in claim 14, wherein the controlcircuitry generates the feed-forward compensation value by: (a)computing a DC_OFFSET phase error according to:${DC\_ OFFSET} = {\left( {\sum\limits_{i = 1}^{N}\;{{dr}\;\phi_{i}^{\prime}}} \right) \div N}$(b) computing a plurality of feed-forward compensation values rφ_(k)corresponding to the plurality of the sync marks according to:${r\;\phi_{k}} = {\sum\limits_{i = 1}^{k}\;{\left( {{{dr}\;\phi_{i}^{\prime}} - {DC\_ OFFSET}} \right).}}$16. The disk drive as recited in claim 9, wherein: (a) the step ofwriting the product servo sectors to the disk defines a plurality oftracks on the disk; and (b) the feed-forward compensation valuesgenerated while writing the product servo sectors to a first track areused to generate the feed-forward compensation values to write theproduct servo sectors to a second track.